package org.infodavid.common.model.criteria;

import org.infodavid.common.model.IUserGroup;

/**
 * The Interface IAccessControlListCriteria.
 */
public interface IAccessControlListCriteria extends IPaginatedSearchCriteria, ISortCriteria {

  /**
   * Gets the name pattern.
   * @return the name pattern
   */
  String getNamePattern();

  /**
   * Sets the name pattern. If null, pattern is ignored.
   * @param value the name pattern
   */
  void setNamePattern(String value);

  /**
   * Gets the user key.
   * @return the user key
   */
  Long getUserKey();

  /**
   * Sets the user key. If null, condition is ignored.
   * @param value the user key
   */
  void setUserKey(Long value);

  /**
   * Gets the role key.
   * @return the role key
   */
  IUserGroup.EUserRole getRole();

  /**
   * Sets the role key. If null, condition is ignored.
   * @param value the role key
   */
  void setRole(IUserGroup.EUserRole value);
}
